The present invention relates generally to relationship management systems and, more particularly, to a manner of managing changes made to contact information within a relationship management system.
Relationship management systems typically use one or more relational databases to, for example, store data or information pertaining to contacts, which may be individual persons, corporations, etc. The information stored in the database for any particular contact may include, for example, phone numbers, facsimile numbers, post office addresses, electronic-mail (e-mail) addresses, etc. and this information may be used to produce mailing lists and customer lists, to send facsimiles, e-mails, or to store contact information to be retrieved at any desired time. One of the simplest and most common uses of a relationship management system is as a centralized electronic address book that can be used by any number of individuals or groups within, for example, a corporation, a law firm, etc. for any number of reasons, such as keeping track of contact information, making sales calls, sending letters, facsimiles, e-mails, etc.
In the past, there have been two basic paradigms for managing the contact information of different individuals as stored in the database. According to the first paradigm, each user of the database has his or her own contact information stored separately in the database. Thus, if two users of the relationship management system desire to store information about the same person or contact (because both users know this contact), two separate sets of records or data are stored for that contact, even though some or all of the information about the contact, as stored by both users, may be the same. In this type of system, the users may be provided access to some are all of other users' contact information, with this access being controlled by security procedures configured by each of the users. However, absent being given the proper clearance, users do not have access or even knowledge of the information stored by other users of the system.
According to the second paradigm, the relationship management system stores each of the different types of contact information (such as names, post office, street or e-mail addresses, facsimile and phone numbers, company affiliations, titles, etc.) in a database only once and uses folders to provide access to the stored contact information to any number of the users of the relationship management system. Each contact stored within the database may be referenced by any number of folders and each folder typically has access rights that define one or more users of the relationship management system that can access the folder and, thereby, access the contact information associated with the contacts referenced by the folder. There may be different types of folders, such as private or personal folders in which personal contacts, business contacts, etc. are referenced, business folders, group folders set up for specific groups of users, task folders set up for specific tasks, etc. A user having access to a folder may add, change or delete the contact information for any of the contacts referenced by the folder and may add new contacts and associated contact information to the database by adding a new contact to the folder. Each folder may reference more than one contact and each contact may be referenced by more than one folder. Thus, for example, if two users know the same person (a contact), the personal or private folders for each of these users may reference that contact and, thus, each of these users may have access to the contact information associated with that contact, even though the contact information for that contact is stored only once in the database.
Both of these paradigms, however, have certain problems or inefficiencies when managing changes to be made to the contact information stored in the database. In the first paradigm, a certain user may know of a change in contact information, such as a particular contact moving or getting a new phone number, and update his or her contact information as stored in the database. However, other users which also have contact information stored about that contact may not be aware of the change in the contact information and, as a result, will not know to change their information for the same contact as stored in the database. Thus, in this paradigm, it is difficult to keep all of the contact information accurate because each and every “version” of the information for a particular contact must be changed manually by the users having access to those different “versions” of the contact information.
In the second paradigm, any user having a folder which references a particular contact may be able to change the information stored for that particular contact and, thus, when one user becomes aware of a change in contact information and makes the change to the database, all other users immediately have access to that changed information. However, in this case, some users may not want to have access only to the most recently entered contact information as there is no guarantee that the most recently entered contact information is correct. In fact, in some cases, a user making a change to contact information as stored in the database may be wiping out correct information about a contact and replacing it with older or incorrect information. Nonetheless, once changed, this contact information is changed for all users and now none of the users have access to the correct information, even though others of the users, who may have greater knowledge about or a more intimate relationship with the contact, would know that the new information is incorrect. Still further, in some cases, the newly entered information may be temporary only and may, at some point, change back to the way it was stored in the database prior to being changed. This situation may arise, for example, when a contact is going on a sabbatical or making an extended stay at a temporary address, but is eventually returning to the address currently stored in the database for the contact. In this case, some users may only want access to the older or more permanent information because they will not need the new and temporary information.
In either case, making changes to the contact information may cause certain problems for some users of the relationship management system. These problems may cause users of the relationship management system to doubt its accuracy (e.g., in the case of the second paradigm) because others can change the contact information at will, or to view the relationship management system as less than completely helpful because information about a particular contact, as stored by another user of the system, is not immediately made available to all the users of the system that know that particular contact.